package com.youlai.boot.system.service;

import com.youlai.boot.system.model.dto.ShoppingInfo;
import com.youlai.boot.system.model.entity.Product;
import com.youlai.boot.system.model.form.ProductForm;
import com.youlai.boot.system.model.query.ProductQuery;
import com.youlai.boot.system.model.vo.ProductVO;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;

/**
 * 商品管理服务类
 *
 * @author zhangyurun
 * @since 2025-03-20 14:24
 */
public interface ProductService extends IService<Product> {

    /**
     *商品管理分页列表
     *
     * @return
     */
    IPage<ProductVO> getProductPage(ProductQuery queryParams);

    /**
     * 获取商品管理表单数据
     *
     * @param id 商品管理ID
     * @return
     */
    ProductForm getProductFormData(Long id);

    /**
     * 新增商品管理
     *
     * @param formData 商品管理表单对象
     * @return
     */
    boolean saveProduct(ProductForm formData);

    /**
     * 修改商品管理
     *
     * @param id   商品管理ID
     * @param formData 商品管理表单对象
     * @return
     */
    boolean updateProduct(Long id, ProductForm formData);

    /**
     * 删除商品管理
     *
     * @param ids 商品管理ID，多个以英文逗号(,)分割
     * @return
     */
    boolean deleteProducts(String ids);
}
